# coding=utf8

# Copyright 2018 JDCLOUD.COM
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# NOTE: This class is auto generated by the jdcloud code generator program.


class InitBackupPlan(object):

    def __init__(self, sourceEngine, backupType, fullBackupSchedule, sourceEndpoint, createNewEndpoint, enableBackupLogs=None, logBackupRetentionPeriod=None, fullBackupRetentionPeriod=None, backupObjects=None):
        """
        :param sourceEngine:  引擎类型 MySQL5  MySQL8  MariaDB  Percona
        :param backupType:  备份方式，支持物理备份或逻辑备份
        :param enableBackupLogs: (Optional) 是否开启日志备份；true：开启；false：关闭
        :param logBackupRetentionPeriod: (Optional) 日志备份保存天数，支持7-3650 天，默认7天
        :param fullBackupRetentionPeriod: (Optional) 全量备份保存天数，支持7-3650 天，默认7天
        :param fullBackupSchedule:  全量备份的备份周期
        :param sourceEndpoint:  备份目标的详细信息
        :param backupObjects: (Optional) 逻辑备份中要备份的对象的信息，物理备份无须该信息
        :param createNewEndpoint:  是否开启日志备份；true：开启；false：关闭
        """

        self.sourceEngine = sourceEngine
        self.backupType = backupType
        self.enableBackupLogs = enableBackupLogs
        self.logBackupRetentionPeriod = logBackupRetentionPeriod
        self.fullBackupRetentionPeriod = fullBackupRetentionPeriod
        self.fullBackupSchedule = fullBackupSchedule
        self.sourceEndpoint = sourceEndpoint
        self.backupObjects = backupObjects
        self.createNewEndpoint = createNewEndpoint
